package com.navi.loaddata.core.oracleEntity.array;

import javax.persistence.*;
import java.sql.Time;
import java.util.Date;

/**
 * Created by Jay on 2018/3/16.
 */
@Entity
@Table(name = "ETL_ARRAY_PDS_GLASS_SUMMARY_V", schema = "EDALDR", catalog = "")
@IdClass(EtlArrayPdsGlassSummaryVPK.class)
public class EtlArrayPdsGlassSummaryV {
    private String stepId;
    private String subEquipId;
    private String glassId;
    private Date glassEndTime;
    private String paramCollection;
    private String paramName;
    private Double paramValue;
    private String paramValue2;
    private Double dataQty;
    private Double avg;
    private Double max;
    private Double min;
    private Double std;
    private Double threeSigma;
    private Double range;
    private Double uniformity1;
    private Double uniformity2;
    private Double usl;
    private Double lsl;
    private Double target;
    private Double ucl;
    private Double lcl;
    private Double cl;
    private String judge;
    private String oos;
    private String ooc;

    @Id
    @Column(name = "STEP_ID")
    public String getStepId() {
        return stepId;
    }

    public void setStepId(String stepId) {
        this.stepId = stepId;
    }

    @Id
    @Column(name = "SUB_EQUIP_ID")
    public String getSubEquipId() {
        return subEquipId;
    }

    public void setSubEquipId(String subEquipId) {
        this.subEquipId = subEquipId;
    }

    @Id
    @Column(name = "GLASS_ID")
    public String getGlassId() {
        return glassId;
    }

    public void setGlassId(String glassId) {
        this.glassId = glassId;
    }

    @Id
    @Column(name = "GLASS_END_TIME")
    @Temporal(TemporalType.TIMESTAMP)
    public Date getGlassEndTime() {
        return glassEndTime;
    }

    public void setGlassEndTime(Date glassEndTime) {
        this.glassEndTime = glassEndTime;
    }

    @Id
    @Column(name = "PARAM_COLLECTION")
    public String getParamCollection() {
        return paramCollection;
    }

    public void setParamCollection(String paramCollection) {
        this.paramCollection = paramCollection;
    }

    @Id
    @Column(name = "PARAM_NAME")
    public String getParamName() {
        return paramName;
    }

    public void setParamName(String paramName) {
        this.paramName = paramName;
    }

    @Basic
    @Column(name = "PARAM_VALUE")
    public Double getParamValue() {
        return paramValue;
    }

    public void setParamValue(Double paramValue) {
        this.paramValue = paramValue;
    }

    @Basic
    @Column(name = "PARAM_VALUE2")
    public String getParamValue2() {
        return paramValue2;
    }

    public void setParamValue2(String paramValue2) {
        this.paramValue2 = paramValue2;
    }

    @Basic
    @Column(name = "DATA_QTY")
    public Double getDataQty() {
        return dataQty;
    }

    public void setDataQty(Double dataQty) {
        this.dataQty = dataQty;
    }

    @Basic
    @Column(name = "AVG")
    public Double getAvg() {
        return avg;
    }

    public void setAvg(Double avg) {
        this.avg = avg;
    }

    @Basic
    @Column(name = "MAX")
    public Double getMax() {
        return max;
    }

    public void setMax(Double max) {
        this.max = max;
    }

    @Basic
    @Column(name = "MIN")
    public Double getMin() {
        return min;
    }

    public void setMin(Double min) {
        this.min = min;
    }

    @Basic
    @Column(name = "STD")
    public Double getStd() {
        return std;
    }

    public void setStd(Double std) {
        this.std = std;
    }

    @Basic
    @Column(name = "THREE_SIGMA")
    public Double getThreeSigma() {
        return threeSigma;
    }

    public void setThreeSigma(Double threeSigma) {
        this.threeSigma = threeSigma;
    }

    @Basic
    @Column(name = "RANGE")
    public Double getRange() {
        return range;
    }

    public void setRange(Double range) {
        this.range = range;
    }

    @Basic
    @Column(name = "UNIFORMITY1")
    public Double getUniformity1() {
        return uniformity1;
    }

    public void setUniformity1(Double uniformity1) {
        this.uniformity1 = uniformity1;
    }

    @Basic
    @Column(name = "UNIFORMITY2")
    public Double getUniformity2() {
        return uniformity2;
    }

    public void setUniformity2(Double uniformity2) {
        this.uniformity2 = uniformity2;
    }

    @Basic
    @Column(name = "USL")
    public Double getUsl() {
        return usl;
    }

    public void setUsl(Double usl) {
        this.usl = usl;
    }

    @Basic
    @Column(name = "LSL")
    public Double getLsl() {
        return lsl;
    }

    public void setLsl(Double lsl) {
        this.lsl = lsl;
    }

    @Basic
    @Column(name = "TARGET")
    public Double getTarget() {
        return target;
    }

    public void setTarget(Double target) {
        this.target = target;
    }

    @Basic
    @Column(name = "UCL")
    public Double getUcl() {
        return ucl;
    }

    public void setUcl(Double ucl) {
        this.ucl = ucl;
    }

    @Basic
    @Column(name = "LCL")
    public Double getLcl() {
        return lcl;
    }

    public void setLcl(Double lcl) {
        this.lcl = lcl;
    }

    @Basic
    @Column(name = "CL")
    public Double getCl() {
        return cl;
    }

    public void setCl(Double cl) {
        this.cl = cl;
    }

    @Basic
    @Column(name = "JUDGE")
    public String getJudge() {
        return judge;
    }

    public void setJudge(String judge) {
        this.judge = judge;
    }

    @Basic
    @Column(name = "OOS")
    public String getOos() {
        return oos;
    }

    public void setOos(String oos) {
        this.oos = oos;
    }

    @Basic
    @Column(name = "OOC")
    public String getOoc() {
        return ooc;
    }

    public void setOoc(String ooc) {
        this.ooc = ooc;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        EtlArrayPdsGlassSummaryV that = (EtlArrayPdsGlassSummaryV) o;

        if (stepId != null ? !stepId.equals(that.stepId) : that.stepId != null) return false;
        if (subEquipId != null ? !subEquipId.equals(that.subEquipId) : that.subEquipId != null) return false;
        if (glassId != null ? !glassId.equals(that.glassId) : that.glassId != null) return false;
        if (glassEndTime != null ? !glassEndTime.equals(that.glassEndTime) : that.glassEndTime != null) return false;
        if (paramCollection != null ? !paramCollection.equals(that.paramCollection) : that.paramCollection != null)
            return false;
        if (paramName != null ? !paramName.equals(that.paramName) : that.paramName != null) return false;
        if (paramValue != null ? !paramValue.equals(that.paramValue) : that.paramValue != null) return false;
        if (paramValue2 != null ? !paramValue2.equals(that.paramValue2) : that.paramValue2 != null) return false;
        if (dataQty != null ? !dataQty.equals(that.dataQty) : that.dataQty != null) return false;
        if (avg != null ? !avg.equals(that.avg) : that.avg != null) return false;
        if (max != null ? !max.equals(that.max) : that.max != null) return false;
        if (min != null ? !min.equals(that.min) : that.min != null) return false;
        if (std != null ? !std.equals(that.std) : that.std != null) return false;
        if (threeSigma != null ? !threeSigma.equals(that.threeSigma) : that.threeSigma != null) return false;
        if (range != null ? !range.equals(that.range) : that.range != null) return false;
        if (uniformity1 != null ? !uniformity1.equals(that.uniformity1) : that.uniformity1 != null) return false;
        if (uniformity2 != null ? !uniformity2.equals(that.uniformity2) : that.uniformity2 != null) return false;
        if (usl != null ? !usl.equals(that.usl) : that.usl != null) return false;
        if (lsl != null ? !lsl.equals(that.lsl) : that.lsl != null) return false;
        if (target != null ? !target.equals(that.target) : that.target != null) return false;
        if (ucl != null ? !ucl.equals(that.ucl) : that.ucl != null) return false;
        if (lcl != null ? !lcl.equals(that.lcl) : that.lcl != null) return false;
        if (cl != null ? !cl.equals(that.cl) : that.cl != null) return false;
        if (judge != null ? !judge.equals(that.judge) : that.judge != null) return false;
        if (oos != null ? !oos.equals(that.oos) : that.oos != null) return false;
        if (ooc != null ? !ooc.equals(that.ooc) : that.ooc != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = stepId != null ? stepId.hashCode() : 0;
        result = 31 * result + (subEquipId != null ? subEquipId.hashCode() : 0);
        result = 31 * result + (glassId != null ? glassId.hashCode() : 0);
        result = 31 * result + (glassEndTime != null ? glassEndTime.hashCode() : 0);
        result = 31 * result + (paramCollection != null ? paramCollection.hashCode() : 0);
        result = 31 * result + (paramName != null ? paramName.hashCode() : 0);
        result = 31 * result + (paramValue != null ? paramValue.hashCode() : 0);
        result = 31 * result + (paramValue2 != null ? paramValue2.hashCode() : 0);
        result = 31 * result + (dataQty != null ? dataQty.hashCode() : 0);
        result = 31 * result + (avg != null ? avg.hashCode() : 0);
        result = 31 * result + (max != null ? max.hashCode() : 0);
        result = 31 * result + (min != null ? min.hashCode() : 0);
        result = 31 * result + (std != null ? std.hashCode() : 0);
        result = 31 * result + (threeSigma != null ? threeSigma.hashCode() : 0);
        result = 31 * result + (range != null ? range.hashCode() : 0);
        result = 31 * result + (uniformity1 != null ? uniformity1.hashCode() : 0);
        result = 31 * result + (uniformity2 != null ? uniformity2.hashCode() : 0);
        result = 31 * result + (usl != null ? usl.hashCode() : 0);
        result = 31 * result + (lsl != null ? lsl.hashCode() : 0);
        result = 31 * result + (target != null ? target.hashCode() : 0);
        result = 31 * result + (ucl != null ? ucl.hashCode() : 0);
        result = 31 * result + (lcl != null ? lcl.hashCode() : 0);
        result = 31 * result + (cl != null ? cl.hashCode() : 0);
        result = 31 * result + (judge != null ? judge.hashCode() : 0);
        result = 31 * result + (oos != null ? oos.hashCode() : 0);
        result = 31 * result + (ooc != null ? ooc.hashCode() : 0);
        return result;
    }
}
